#include "widget.h"
#include "ui_widget.h"

#include <QRegExpValidator>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 需要给单行输入框设置验证器，基于正则表达式来完成验证
    // Qt中用QRegExp类表示正则表达式
    // ^表示以xxx开头，\d表示数字(C++字符串中需要使用转义字符，\\d)，{10}表示前面的内容重复出现10次，$表示结尾
    QRegExp regExp("^1\\d{10}$");
    ui->lineEdit->setValidator(new QRegExpValidator(regExp));
}

Widget::~Widget()
{
    delete ui;
}


void Widget::on_lineEdit_textEdited(const QString &arg1)
{
    QString content = arg1;
    int pos = -1;
    if (ui->lineEdit->validator()->validate(content, pos) == QValidator::Acceptable)
    {
        // 验证通过
        ui->pushButton->setEnabled(true);
    }
    else
    {
        // 验证不通过
        ui->pushButton->setEnabled(false);
    }
}
